package com.example.listview;

import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

import java.util.List;
//当传入打他数据不是同一个array时需要调用myAdapter.notifyDataSetChanged();进行数据刷新
class MyAdapter extends BaseAdapter {
    private List<Bean> data;
    private Context context;

    public MyAdapter(List<Bean> data, Context context) {
        this.data = data;
        this.context = context;
    }

    @Override
    public int getCount() {

        return data.size();
    }

    @Override
    public Object getItem(int position) {
        return null;
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder viewHolder;
        if (convertView==null) {
            viewHolder=new ViewHolder();
            convertView= LayoutInflater.from(context).inflate(R.layout.list_item,parent,false);
            //.inflate最后一个参数如果root为null，attachToRoot将失去作用，设置任何值都没有意义。
            //如果root不为null，attachToRoot设为true，则会给加载的布局文件的指定一个父布局，即root。
            //如果root不为null，attachToRoot设为false，则会将布局文件最外层的所有layout属性进行设置，当该view被添加到父view当中时，这些layout属性会自动生效。
            //在不设置attachToRoot参数的情况下，如果root不为null，attachToRoot参数默认为true
            viewHolder.textView=convertView.findViewById(R.id.text1);
            convertView.setTag(viewHolder);

        }else {
            viewHolder=(ViewHolder) convertView.getTag();
        }
       // TextView textView=convertView.findViewById(R.id.text1);
        viewHolder.textView.setText(data.get(position).getName());
        if (position==5){
            viewHolder.textView.setText("5446");
           // textView.setVisibility(View.GONE);
        }
        if (position==6){
           // textView.setDivider(null);//setDividerHeight(0);   //footerDividersEnabled
            //extView.setVisibility(View.GONE);


        }
        Log.e("leo","getView"+position);

        return convertView;
    }
    private  final  class ViewHolder{
        TextView textView;
    }

}
